package main

import "fmt"

func main() {
	var i int = 1
	fmt.Printf("i addr is %v\n", &i) //  0xc00012a000

	var ptr *int = &i
	fmt.Printf("ptr value is %v\n", ptr) // 0xc00012a000
	fmt.Printf("ptr addr is %v\n", &ptr) // 0xc000124020
	fmt.Printf("*ptr is %v\n", *ptr)     //  1

	/*
			addr: 0xc00012a000
		i -> mem value 1
				^
		ptr -> mem value 0xc00012a000
			addr: 0xc000124020

	*/

}
